[Amazon FSx for NetApp ONTAP] ワークグループのCIFSサーバーをドメイン参加させてみた
検証が終わったらドメインに参加させたい
こんにちは、のんピ(@non____97)です。
皆さんはAmazon FSx for NetApp ONTAP(以降FSx for ONTAP)のワークグループのCIFSサーバーをドメイン参加させたいなと思ったことはありますか? 私はあります。
以下記事でワークグループのCIFSサーバーを作成できることを紹介しました。
検証でワークグループでCIFSサーバーを作成して使用感を確認した後、ドメインに参加させたいケースもあると思います。
仮にSVMを作り直すとなるとボリュームやポリシー作り直したり、設定し直したりする必要があります。それは非常に手間ですよね。
UpdateStorageVirtualMachine APIのRequest Parametersを確認すると、以下のようにSelfManagedActiveDirectoryConfiguration
で指摘できるのはサービスアカウントの名前やパスワード、DNSサーバーのIPアドレスで、ドメインの指定はできませんでした。
{ "ActiveDirectoryConfiguration": { "SelfManagedActiveDirectoryConfiguration": { "DnsIps": [ "string" ], "Password": "string", "UserName": "string" } }, "ClientRequestToken": "string", "StorageVirtualMachineId": "string", "SvmAdminPassword": "string" }
そのため、一度SVMを作成した後はAWS側からドメイン参加することは出来ないようです。
ということで、ONTAP CLIでSVM作成後にCIFSサーバーをドメインに参加させた場合の手順を確認してみました。
いきなりまとめ
- SVM作成後にCIFSサーバーをドメインに参加させることは可能
- 参加するためにはSVMでDNSの設定をする必要がある
- SMB DNS名をDNSに自動的に登録してもらうようにするためには、ドメイン参加前にSVMでDDNSを有効化する必要がある
- SVM作成時に指定できる
FileSystemAdministratorsGroup
に対応するパラメーターを指定する項目がなかった
- ドメインに参加してもCIFSファイル共有は削除されない
- CIFSサーバーを後からドメイン参加させた場合、ドメインが信頼されるドメインとして認識されない
- ドメイン参加の情報がマネジメントコンソールに反映されるには15分ほど後
- ただし、ドメインから離脱しても、ADの情報やSMB DNS名は表示されたまま
- SVMは一度ドメインに参加すると、離脱してもAWS上から本当にドメインに参加しているのか判断できない
検証環境
検証環境は以下の通りです。
FSx for ONTAPでワークグループのCIFSサーバーとCIFSファイル共有を作成して、Windows ServerのEC2インスタンスからSMBで接続します。
その後、Windows ServerをAD DCに昇格し、CIFSサーバーをドメインに参加させます。
検証環境はAWS CDKでデプロイします。使用したコードは以下リポジトリに保存しています。
ワークグループのCIFSサーバーの動作確認
ワークグループのCIFSサーバーの作成
まず、ワークグループのCIFSサーバーを作成します。作成手順以前の記事で紹介しているものと同じ手順です。
# FSx for ONTAPファイルシステムにSSHで接続 > ssh fsxadmin@management.fs-078d5a29bc3af27cc.fsx.us-east-1.amazonaws.com The authenticity of host 'management.fs-078d5a29bc3af27cc.fsx.us-east-1.amazonaws.com (10.0.1.44)' can\'t be established. ECDSA key fingerprint is SHA256:pxJ3IpqPpHMISqyXgARcC5BYGJ3UmvCRtsxtw5l93nw. Are you sure you want to continue connecting (yes/no/[fingerprint])? yes Warning: Permanently added 'management.fs-078d5a29bc3af27cc.fsx.us-east-1.amazonaws.com,10.0.1.44' (ECDSA) to the list of known hosts. Password: This is your first recorded login. # SVMの確認 FsxId078d5a29bc3af27cc::> vserver show -vserver fsx-for-ontap-svm -instance Vserver: fsx-for-ontap-svm Vserver Type: data Vserver Subtype: default Vserver UUID: 0c2fbafd-4cf8-11ed-a80b-c57f7ad2f28c Root Volume: fsx_for_ontap_svm_root Aggregate: aggr1 NIS Domain: - Root Volume Security Style: mixed LDAP Client: - Default Volume Language Code: C.UTF-8 Snapshot Policy: default Data Services: data-cifs, data-iscsi, data-nfs, data-nvme-tcp Comment: Quota Policy: default List of Aggregates Assigned: aggr1 Limit on Maximum Number of Volumes allowed: unlimited Vserver Admin State: running Vserver Operational State: running Vserver Operational State Stopped Reason: - Allowed Protocols: nfs, cifs, fcp, iscsi, ndmp Disallowed Protocols: - Is Vserver with Infinite Volume: false QoS Policy Group: - Caching Policy Name: - Config Lock: false IPspace Name: Default Foreground Process: - Logical Space Reporting: false Logical Space Enforcement: false Default Anti_ransomware State of the Vserver's Volumes: disabled # CIFSサーバーの確認 FsxId078d5a29bc3af27cc::> vserver cifs show This table is currently empty. # ワークグループのCIFSサーバーの作成 FsxId078d5a29bc3af27cc::> vserver cifs create -vserver fsx-for-ontap-svm -cifs-server cifs-server -workgroup fsxn-workgroup Notice: SMB1 protocol version is obsolete and considered insecure. Therefore it is deprecated and disabled on this CIFS server. Support for SMB1 might be removed in a future release. If required, use the (privilege: advanced) "vserver cifs options modify -vserver fsx-for-ontap-svm -smb1-enabled true" to enable it. # 作成したCIFSサーバーの確認 FsxId078d5a29bc3af27cc::> vserver cifs show -instance Vserver: fsx-for-ontap-svm CIFS Server NetBIOS Name: CIFS-SERVER NetBIOS Domain/Workgroup Name: FSXN-WORKGROUP Fully Qualified Domain Name: - Organizational Unit: - Default Site Used by LIFs Without Site Membership: - Workgroup Name: FSXN-WORKGROUP Authentication Style: workgroup CIFS Server Administrative Status: up CIFS Server Description: List of NetBIOS Aliases: -
作業後、念の為マネジメントコンソールからSVMがドメインに参加していないことを確認します。
CIFSユーザーの作成
次にSMBで接続するときの認証で使うCIFSユーザーを作成します。
# CIFSユーザーの作成 FsxId078d5a29bc3af27cc::> vserver cifs users-and-groups local-user create -vserver fsx-for-ontap-svm -user-name cifs-user -is-account-disabled false Enter the password: Confirm the password: # 作成したCIFSユーザーの確認 FsxId078d5a29bc3af27cc::> vserver cifs users-and-groups local-user show -instance Vserver: fsx-for-ontap-svm User Name: CIFS-SERVER\Administrator Full Name: Description: Built-in administrator account Is Account Disabled: true Vserver: fsx-for-ontap-svm User Name: CIFS-SERVER\cifs-user Full Name: - Description: - Is Account Disabled: false 2 entries were displayed.
CIFSファイル共有の作成
最後にCIFSファイル共有を作成します。
# CIFSファイル共有で見せるボリュームのジャンクションパスを確認 FsxId078d5a29bc3af27cc::> volume show -fields junction-path vserver volume junction-path ----------------- ---------------------- ------------- fsx-for-ontap-svm fsx_for_ontap_svm_root / fsx-for-ontap-svm fsx_for_ontap_volume /volume 2 entries were displayed. # CIFSファイル共有を作成 FsxId078d5a29bc3af27cc::> vserver cifs share create -vserver fsx-for-ontap-svm -share-name cifs-share -path /volume # CIFSファイル共有が作成されたことを確認 FsxId078d5a29bc3af27cc::> vserver cifs share show -vserver fsx-for-ontap-svm Vserver Share Path Properties Comment ACL -------------- ------------- ----------------- ---------- -------- ----------- fsx-for-ontap-svm oplocks BUILTIN\Administrators / Full Control c$ / browsable - changenotify show-previous-versions fsx-for-ontap-svm oplocks Everyone / Full Control cifs-share /volume browsable - changenotify show-previous-versions fsx-for-ontap-svm browsable ipc$ / - - 3 entries were displayed. # 作成したCIFSファイル共有の詳細を確認 FsxId078d5a29bc3af27cc::> vserver cifs share show -vserver fsx-for-ontap-svm -share-name cifs-share -instance Vserver: fsx-for-ontap-svm Share: cifs-share CIFS Server NetBIOS Name: CIFS-SERVER Path: /volume Share Properties: oplocks browsable changenotify show-previous-versions Symlink Properties: symlinks File Mode Creation Mask: - Directory Mode Creation Mask: - Share Comment: - Share ACL: Everyone / Full Control File Attribute Cache Lifetime: - Volume Name: fsx_for_ontap_volume Offline Files: manual Vscan File-Operations Profile: standard Maximum Tree Connections on Share: 4294967295 UNIX Group for File Create: -
ワークグループのCIFSサーバーのCIFSファイル共有に接続できることを確認
作成したCIFSファイル共有をZドライブにマウントして書き込めることを確認します。
# 現在のドライブ一覧表示 > Get-PSDrive Name Used (GB) Free (GB) Provider Root CurrentLocation ---- --------- --------- -------- ---- --------------- Alias Alias C 13.46 16.54 FileSystem C:\ Windows\system32 Cert Certificate \ Env Environment Function Function HKCU Registry HKEY_CURRENT_USER HKLM Registry HKEY_LOCAL_MACHINE Variable Variable WSMan WSMan # 作成したCIFSファイル共有をZドライブにマウント > net use Z: \\svm-0aeb4d0634b811bf1.fs-078d5a29bc3af27cc.fsx.us-east-1.amazonaws.com\cifs-share The password is invalid for \\svm-0aeb4d0634b811bf1.fs-078d5a29bc3af27cc.fsx.us-east-1.amazonaws.com\cifs-share. Enter the user name for 'svm-0aeb4d0634b811bf1.fs-078d5a29bc3af27cc.fsx.us-east-1.amazonaws.com': CIFS-SERVER\cifs-user Enter the password for svm-0aeb4d0634b811bf1.fs-078d5a29bc3af27cc.fsx.us-east-1.amazonaws.com: The command completed successfully. # 作成したCIFSファイル共有をZドライブにマウントできたことを確認 > Get-PSDrive Name Used (GB) Free (GB) Provider Root CurrentLocation ---- --------- --------- -------- ---- --------------- Alias Alias C 13.46 16.54 FileSystem C:\ Windows\system32 Cert Certificate \ Env Environment Function Function HKCU Registry HKEY_CURRENT_USER HKLM Registry HKEY_LOCAL_MACHINE Variable Variable WSMan WSMan Z 0.00 95.00 FileSystem \\svm-0aeb4d0634b811bf1.fs-078d5... # Zドライブ配下にファイルを作成し、読み込めることを確認 > echo test-text > Z:\test-text > ls Z:\ Directory: Z:\ Mode LastWriteTime Length Name ---- ------------- ------ ---- -a---- 10/16/2022 2:26 AM 24 test-text > cat Z:\test-text test-text
ワークグループのCIFSサーバー上のCIFSファイル共有に接続できることを確認できました。
ADの準備
AD DSの役割のインストール
ワークグループのCIFSサーバーがドメインに参加できるようにADの準備をします。
まず、下準備です。
AWS CDKでデプロイしたEC2インスタンスにキーペアの設定をしていなかったのでローカルのAdministrorのパスワードが分かりませんでした。そのため、SSMセッションマネージャーでEC2インスタンスに接続し、net user
でローカルのAdministratorのパスワードを設定します。
> net user administrator <ローカルのAdministratorのパスワード> The command completed successfully.
パスワード設定後、SSMセッションマネージャーでポートフォワーディングをしてRDP接続します。
# SSMセッションマネージャーで、セルフマネージドADのEC2インスタンスに対してRDPのポート3389をローカルマシンの13389にポートフォワーディング aws ssm start-session \ --target <Windows Server 2022 EC2インスタンスのID> \ --document-name AWS-StartPortForwardingSession \ --parameters '{"portNumber":["3389"],"localPortNumber":["13389"]}'
下準備ができたので、以下記事を参考にセルフマネージドADを構築します。
新しいフォレストとしてcorp.non-97.net
ドメインでAD DSを作成します。それ以外は全てデフォルトの設定で作成しました。
AD DSの設定が完了すると、OSの再起動を求められるので再起動を行います。
再起動後corp.non-97.net\Administrator
でRDP接続します。接続後、ドメインのAdministratorでログインしていることを確認します。
> whoami -fqdn CN=Administrator,CN=Users,DC=corp,DC=non-97,DC=net
OUの作成
CIFSサーバーがドメイン参加した際のコンピューターオブジェクトの場所として専用のOUを作成します。
# OUの作成 > New-ADOrganizationalUnit -Name FSxForONTAP -Path "DC=corp,DC=non-97,DC=net" -ProtectedFromAccidentalDeletion $True # 作成したOUの確認 > Get-ADOrganizationalUnit -Filter "*" -SearchBase "DC=corp,DC=non-97,DC=net" City : Country : DistinguishedName : OU=Domain Controllers,DC=corp,DC=non-97,DC=net LinkedGroupPolicyObjects : {CN={6AC1786C-016F-11D2-945F-00C04fB984F9},CN=Policies,CN=System,DC=corp,DC=non-97,DC=net} ManagedBy : Name : Domain Controllers ObjectClass : organizationalUnit ObjectGUID : e189b0ef-bb69-4e0a-956f-459564632b49 PostalCode : State : StreetAddress : City : Country : DistinguishedName : OU=FSxForONTAP,DC=corp,DC=non-97,DC=net LinkedGroupPolicyObjects : {} ManagedBy : Name : FSxForONTAP ObjectClass : organizationalUnit ObjectGUID : 093b8217-7b1d-43d1-a8b0-98dc6dae6138 PostalCode : State : StreetAddress :
サービスアカウントの作成
CIFSサーバーをドメイン参加するときに使用するサービスアカウントを作成します。
# サービスアカウント用のドメインユーザーを作成 > New-ADUser ` -Name "FSxServiceAccount" ` -UserPrincipalName "[email protected]" ` -Accountpassword (Read-Host -AsSecureString "AccountPassword") ` -Path "OU=FSxForONTAP,DC=corp,DC=non-97,DC=net" ` -PasswordNeverExpires $True ` -Enabled $True AccountPassword: ******************************** # 作成したサービスアカウント用ドメインユーザーを確認 > Get-ADUser -Filter "*" -SearchBase "OU=FSxForONTAP,DC=corp,DC=non-97,DC=net" DistinguishedName : CN=FSxServiceAccount,OU=FSxForONTAP,DC=corp,DC=non-97,DC=net Enabled : True GivenName : Name : FSxServiceAccount ObjectClass : user ObjectGUID : a7211371-a302-4db9-a3c3-a96da1a4bab0 SamAccountName : FSxServiceAccount SID : S-1-5-21-263576405-1328779005-4075605037-1104 Surname : UserPrincipalName : [email protected]
作成したサービスアカウントに作成したOUの制御を委任させます。
委任時に許可するものについては以下AWS公式ドキュメントをご覧ください。
また、委任設定時の詳細な画面をご覧になりたい場合は以下記事で同様の作業をしておりますので、こちらをご参照ください。
作成したOUのプロパティを確認して意図した通りの設定がされていることを確認します。
管理用グループとユーザーの作成
管理用グループとユーザーを作成します。
管理用グループについてAWS公式ドキュメントでは以下のように説明されています。
(オプション) ファイルシステム上で管理アクションを実行する許可を付与するドメイングループ。例えば、このドメイングループが Windows SMB ファイル共有を管理したり、ファイルやフォルダの所有権を取得したりします。このグループを指定しない場合、Amazon FSx は、デフォルトで AD ドメインのドメイン管理者グループにこの認可を付与します。
Amazon FSx SVM を Microsoft Active Directory に結合する - FSx for ONTAP
vserver cifs modifyには関連するパラメーターは存在しないですが、念の為作成しておきます。
# 管理用ユーザーの作成 > New-ADUser ` -Name "FSxAdmin" ` -UserPrincipalName "[email protected]" ` -Accountpassword (Read-Host -AsSecureString "AccountPassword") ` -Path "OU=FSxForONTAP,DC=corp,DC=non-97,DC=net" ` -PasswordNeverExpires $True ` -Enabled $True AccountPassword: ******************************** # 作成した管理用ユーザーの確認 > Get-ADUser -Filter "*" -SearchBase "OU=FSxForONTAP,DC=corp,DC=non-97,DC=net" DistinguishedName : CN=FSxServiceAccount,OU=FSxForONTAP,DC=corp,DC=non-97,DC=net Enabled : True GivenName : Name : FSxServiceAccount ObjectClass : user ObjectGUID : a7211371-a302-4db9-a3c3-a96da1a4bab0 SamAccountName : FSxServiceAccount SID : S-1-5-21-263576405-1328779005-4075605037-1104 Surname : UserPrincipalName : [email protected] DistinguishedName : CN=FSxAdmin,OU=FSxForONTAP,DC=corp,DC=non-97,DC=net Enabled : True GivenName : Name : FSxAdmin ObjectClass : user ObjectGUID : 26eff350-2b97-468e-85f2-a1a4530f44a3 SamAccountName : FSxAdmin SID : S-1-5-21-263576405-1328779005-4075605037-1105 Surname : UserPrincipalName : [email protected] # 管理用グループの作成 > New-ADGroup ` -Name FSxAdminGroup ` -GroupCategory Security ` -GroupScope Global ` -Path "OU=FSxForONTAP,DC=corp,DC=non-97,DC=net" # 作成した管理用グループの確認 > Get-ADGroup -Filter "*" -SearchBase "OU=FSxForONTAP,DC=corp,DC=non-97,DC=net" DistinguishedName : CN=FSxAdminGroup,OU=FSxForONTAP,DC=corp,DC=non-97,DC=net GroupCategory : Security GroupScope : Global Name : FSxAdminGroup ObjectClass : group ObjectGUID : 6fbeeea4-6859-428b-a546-f78bd0d7574b SamAccountName : FSxAdminGroup SID : S-1-5-21-263576405-1328779005-4075605037-1106 # 管理用グループに管理用ユーザーを所属させる > Add-ADGroupMember -Identity FSxAdminGroup -Members FSxAdmin # 管理用グループに管理用ユーザーを所属していることを確認 > Get-ADGroupMember -Identity FSxAdminGroup distinguishedName : CN=FSxAdmin,OU=FSxForONTAP,DC=corp,DC=non-97,DC=net name : FSxAdmin objectClass : user objectGUID : 26eff350-2b97-468e-85f2-a1a4530f44a3 SamAccountName : FSxAdmin SID : S-1-5-21-263576405-1328779005-4075605037-1105
セキュリティグループの変更
最後にWindows Server 2022のEC2インスタンスのセキュリティグループのインバウンドルールを変更します。
FSx for ONTAPのセキュリティグループからのインバウンドの通信を全て許可するように設定変更します。
ポートを絞りたい方は以下AWS公式ドキュメントに記載されているので、こちらを参考にしながら設定してみてください。
ワークグループのCIFSサーバーをドメインに参加
ワークグループのCIFSサーバーをドメインに参加
AD側の準備ができたので、ワークグループのCIFSサーバーをドメインに参加させます。
FsxId078d5a29bc3af27cc::> vserver cifs modify -vserver fsx-for-ontap-svm -cifs-server CIFS-SERVER -domain corp.non-97.net -ou ou=FSxforONTAP Error: command failed: Cannot find a suitable DNS server. Check your Vserver's DNS configuration.
はい、指定したドメインを名前解決しようとして失敗していますね。DNSサーバーを指定していないので当然です。
SVMが参照するDNSサーバーとしてAD DCとして使用しているWindows Server 2022のEC2インスタンスのIPアドレスを指定して、再チャレンジします。
# SVMにDNSの設定を作成 FsxId078d5a29bc3af27cc::> dns create -vserver fsx-for-ontap-svm -domains corp.non-97.net -name-servers 10.0.1.22 Warning: Only one DNS server is configured. Configure more than one DNS server to avoid a single-point-of-failure. # DNSの設定が作成されたことを確認 FsxId078d5a29bc3af27cc::> dns show Name Vserver Domains Servers --------------- ----------------------------------- ---------------- fsx-for-ontap-svm corp.non-97.net 10.0.1.22 # DNSの設定の詳細を確認 FsxId078d5a29bc3af27cc::> dns show -instance Vserver: fsx-for-ontap-svm Domains: corp.non-97.net Name Servers: 10.0.1.22 Timeout (secs): 2 Maximum Attempts: 1 # SVMからDNSサーバーへの疎通確認 FsxId078d5a29bc3af27cc::> dns check -vserver fsx-for-ontap-svm -name-server 10.0.1.22 Vserver: fsx-for-ontap-svm Name Server: 10.0.1.22 Name Server Status: up Status Details: Response time (msec): 1 # CIFSサーバーをドメインに参加 FsxId078d5a29bc3af27cc::> vserver cifs modify -vserver fsx-for-ontap-svm -cifs-server CIFS-SERVER -domain corp.non-97.net -ou ou=FSxforONTAP Error: command failed: Failed to modify the CIFS server "CIFS-SERVER". Reason: Cannot modify CIFS server while its administrative status is "up". Use "-status-admin down" with the "vserver cifs modify" command to disable the CIFS service.
ステータスがup
になっているためドメインに参加できないようです。指示された通り、パラメーターに-status-admin down
を追加して再々チャレンジです。
# CIFSサーバーをドメインに参加 FsxId078d5a29bc3af27cc::> vserver cifs modify -vserver fsx-for-ontap-svm -cifs-server CIFS-SERVER -domain corp.non-97.net -ou ou=FSxforONTAP -status-admin down In order to create an Active Directory machine account for the CIFS server, you must supply the name and password of a Windows account with sufficient privileges to add computers to the "ou=FSxforONTAP" container within the "CORP.NON-97.NET" domain. Enter the user name: FSxServiceAccount Enter the password: # CIFSサーバーがドメイン参加したことを確認 FsxId078d5a29bc3af27cc::> vserver cifs show -instance Vserver: fsx-for-ontap-svm CIFS Server NetBIOS Name: CIFS-SERVER NetBIOS Domain/Workgroup Name: CORP Fully Qualified Domain Name: CORP.NON-97.NET Organizational Unit: ou=FSxforONTAP Default Site Used by LIFs Without Site Membership: Workgroup Name: - Authentication Style: domain CIFS Server Administrative Status: up CIFS Server Description: List of NetBIOS Aliases: -
CIFSサーバーがドメインに参加しました。
作成したCIFSファイル共有cifs-share
が削除されていないか確認します。
FsxId078d5a29bc3af27cc::> vserver cifs share show Vserver Share Path Properties Comment ACL -------------- ------------- ----------------- ---------- -------- ----------- fsx-for-ontap-svm oplocks BUILTIN\Administrators / Full Control c$ / browsable - changenotify show-previous-versions fsx-for-ontap-svm oplocks Everyone / Full Control cifs-share /volume browsable - changenotify show-previous-versions fsx-for-ontap-svm browsable ipc$ / - - 3 entries were displayed.
cifs-share
は削除されずに残っていますね。
最後にCIFSサーバーが指定したOUFSxforONTAP
上に作成されたことを確認します。
> Get-ADComputer -Filter "*" -SearchBase "DC=corp,DC=non-97,DC=net" DistinguishedName : CN=EC2AMAZ-O1GJL06,OU=Domain Controllers,DC=corp,DC=non-97,DC=net DNSHostName : EC2AMAZ-O1GJL06.corp.non-97.net Enabled : True Name : EC2AMAZ-O1GJL06 ObjectClass : computer ObjectGUID : ad192cdf-8d3e-4555-bf79-44d47838aa8a SamAccountName : EC2AMAZ-O1GJL06$ SID : S-1-5-21-263576405-1328779005-4075605037-1001 UserPrincipalName : DistinguishedName : CN=CIFS-SERVER,OU=FSxForONTAP,DC=corp,DC=non-97,DC=net DNSHostName : CIFS-SERVER.CORP.NON-97.NET Enabled : True Name : CIFS-SERVER ObjectClass : computer ObjectGUID : 4e59162b-c171-4476-9ba9-56fac84b6ebd SamAccountName : CIFS-SERVER$ SID : S-1-5-21-263576405-1328779005-4075605037-1107 UserPrincipalName :
確かに指定したOU上にコンピューターオブジェクトが作成されています。
15分ほど待つとマネジメントコンソールに参加しているドメインやCIFSサーバーのNet BIOS名、SMB DNS名などが表示されるようになりました。
サービスアカウントのユーザー名が空欄なのはサポートに問い合わせてみます。
また、更新
をクリックすると既存の Active Directory の更新
を選択できるようになっていました。
接続確認
それではCIFSファイル共有をマウントしてみます。
# クライアントがドメインに参加していることを確認 > Get-WMIObject Win32_ComputerSystem Domain : corp.non-97.net Manufacturer : Amazon EC2 Model : t3.micro Name : EC2AMAZ-O1GJL06 PrimaryOwnerName : EC2 TotalPhysicalMemory : 1043886080 # 現在のドライブ一覧の確認 > Get-PSDrive Name Used (GB) Free (GB) Provider Root CurrentLocation ---- --------- --------- -------- ---- --------------- AD ActiveDire... //RootDSE/ Alias Alias C 14.48 15.52 FileSystem C:\ Users\Administrator Cert Certificate \ Env Environment Function Function HKCU Registry HKEY_CURRENT_USER HKLM Registry HKEY_LOCAL_MACHINE Variable Variable WSMan WSMan # CIFSファイル共有をZドライブにマウント > net use Z: \\CIFS-SERVER.CORP.NON-97.NET\cifs-share System error 53 has occurred. The network path was not found.
ドメインに参加したので、CIFSファイル共有のDNS名をSVMの管理DNS名であるsvm-0aeb4d0634b811bf1.fs-078d5a29bc3af27cc.fsx.us-east-1.amazonaws.com
からSMB DNS名であるCIFS-SERVER.CORP.NON-97.NET
に変更しましたが、名前解決できないようです。
nslookup
でも名前解決できないことを確認します。
> nslookup CIFS-SERVER.CORP.NON-97.NET Server: localhost Address: ::1 *** localhost can't find CIFS-SERVER.CORP.NON-97.NET: Non-existent domain
一方、SVMの管理DNS名では接続できました。CIFSサーバーがドメインに参加しており、CIFSファイル共有がEveryone / Full Control
なので認証せずとも読み書きできています。
# SVMの管理DNS名でCIFSファイル共有をマウント > net use Z: \\svm-0aeb4d0634b811bf1.fs-078d5a29bc3af27cc.fsx.us-east-1.amazonaws.com\cifs-share The command completed successfully. # CIFSファイル共有がマウントできたことを確認 > Get-PSDrive Name Used (GB) Free (GB) Provider Root CurrentLocation ---- --------- --------- -------- ---- --------------- AD ActiveDire... //RootDSE/ Alias Alias C 14.49 15.51 FileSystem C:\ Users\Administrator Cert Certificate \ Env Environment Function Function HKCU Registry HKEY_CURRENT_USER HKLM Registry HKEY_LOCAL_MACHINE Variable Variable WSMan WSMan Z 0.00 95.00 FileSystem \\svm-0aeb4d0634b811bf1.fs-078d5... # CIFSファイル共有配下のファイルを確認 > ls Z:\ Directory: Z:\ Mode LastWriteTime Length Name ---- ------------- ------ ---- -a---- 10/16/2022 2:26 AM 24 test-text # ファイルの書き込み/読み込み確認 > echo test-text2 > Z:\test-text2 > cat Z:\test-text2 test-text2
CIFSサーバーのレコードがDNSサーバーに登録されるようにする
SVMの管理DNS名では接続できても、SMB DNS名で接続できないのは困ります。
以下記事でDataSyncのロケーションとしてSMB DNS名が存在しないFSx for ONTAPをSMB接続で指定しようとした時No SMB endpoint configured for FSx for ONTAP SVM.
とエラーになりました。
今回の場合、SMB DNS名は確かにAWS上で認識はされています。しかし、SMB DNS名で名前解決できないとなると、DataSyncロケーションは作成できても、タスクの実行に失敗する可能性が高いと考えます。
そのため、CIFSサーバーのレコードがDNSサーバーに登録されるようになんとかして設定しようと思います。
corp.non-97.net
の前方参照ゾーンのタイプを確認してみると、Active Directory統合ゾーン(Active Directory-Integrated
)でした。そのためDNSサーバー側ではドメイン参加することで動的にレコードが更新されるようになっていそうです。
色々調べているとNetAppのドキュメントに以下のような記載がありました。
SVMでの動的DNSの設定
Active Directoryに統合されたDNSサーバをCIFSサーバのDNSにあるDNSレコードに動的に登録する場合、CIFSサーバを作成する前にStorage Virtual Machine(SVM)上の動的DNS(DDNS)を設定する必要があります。
ONTAP CLIで確認してみると、確かにDDNSの設定はしていないですね。
FsxId078d5a29bc3af27cc::> dns dynamic-update show Vserver Is-Enabled Use-Secure Vserver FQDN TTL --------------- ---------- ---------- ------------------------ ------- fsx-for-ontap-svm false false - 24h
CIFSサーバを作成する前にStorage Virtual Machine(SVM)上の動的DNS(DDNS)を設定する必要があります。
という文言が気になりますが、dns dynamic-update modifyでDDNSを有効化してみます。
# SVMでDDNSを有効化 FsxId078d5a29bc3af27cc::> dns dynamic-update modify -vserver fsx-for-ontap-svm -is-enabled true -use-secure true -vserver-fqdn corp.non-97.net # DDNSが有効化されたことを確認 FsxId078d5a29bc3af27cc::> dns dynamic-update show Vserver Is-Enabled Use-Secure Vserver FQDN TTL --------------- ---------- ---------- ------------------------ ------- fsx-for-ontap-svm true true corp.non-97.net 24h
ちなみにTTLはFSx for ONTAPの場合はTTLを指定できないようです。
FsxId078d5a29bc3af27cc::> dns dynamic-update modify - -vserver -is-enabled -use-secure -vserver-fqdn -skip-fqdn-validation
DDNSを有効化してから10分ほど待ってみました。しかし、引き続きSMB DNS名では名前解決できませんでした。
やはりCIFSサーバーを作成する前に
というのがキモのようです。
試しに一度ドメインから離脱して、再度ドメイン参加してみます。
まず、ドメインから離脱します。
# ドメインから離脱 FsxId078d5a29bc3af27cc::> vserver cifs modify -vserver fsx-for-ontap-svm -cifs-server CIFS-SERVER -workgroup fsxn-workgroup -status-admin down Warning: To enter workgroup mode, all domain-based features must be disabled and their configuration removed automatically by the system, including continuously-available shares and shadow copies. However, domain-configured share ACLs such as "CORP.NON-97.NET\userName" will not work properly, but cannot be removed by Data ONTAP. Remove these share ACLs as soon as possible using external tools after the command completes. Do you want to continue? {y|n}: y Successfully queued CIFS Server Modify job [id: 41] for CIFS server "CIFS-SERVER". To view the status of the job, use the "job show -id <jobid>" command. # 処理が完了したことを確認 FsxId078d5a29bc3af27cc::> job show -id 41 Owning Job ID Name Vserver Node State ------ -------------------- ---------- -------------- ---------- 41 CIFS Server Modify Job fsx-for-ontap-svm FsxId078d5a29bc3af27cc-02 Success Description: Additional work in modifying CIFS server: 1. mode: Domain to Workgroup. # CIFSサーバーがドメインから離脱したことを確認 FsxId078d5a29bc3af27cc::> vserver cifs show -instance Vserver: fsx-for-ontap-svm CIFS Server NetBIOS Name: CIFS-SERVER NetBIOS Domain/Workgroup Name: FSXN-WORKGROUP Fully Qualified Domain Name: - Organizational Unit: - Default Site Used by LIFs Without Site Membership: - Workgroup Name: FSXN-WORKGROUP Authentication Style: workgroup CIFS Server Administrative Status: up CIFS Server Description: List of NetBIOS Aliases: -
CIFSサーバーがドメインから離脱できたことを確認できました。
ちなみにドメインから離脱してもCIFSサーバーのコンピューターオブジェクトは残ったままです。
> Get-ADComputer -Filter "*" -SearchBase "DC=corp,DC=non-97,DC=net" DistinguishedName : CN=EC2AMAZ-O1GJL06,OU=Domain Controllers,DC=corp,DC=non-97,DC=net DNSHostName : EC2AMAZ-O1GJL06.corp.non-97.net Enabled : True Name : EC2AMAZ-O1GJL06 ObjectClass : computer ObjectGUID : ad192cdf-8d3e-4555-bf79-44d47838aa8a SamAccountName : EC2AMAZ-O1GJL06$ SID : S-1-5-21-263576405-1328779005-4075605037-1001 UserPrincipalName : DistinguishedName : CN=CIFS-SERVER,OU=FSxForONTAP,DC=corp,DC=non-97,DC=net DNSHostName : CIFS-SERVER.CORP.NON-97.NET Enabled : True Name : CIFS-SERVER ObjectClass : computer ObjectGUID : 4e59162b-c171-4476-9ba9-56fac84b6ebd SamAccountName : CIFS-SERVER$ SID : S-1-5-21-263576405-1328779005-4075605037-1107 UserPrincipalName :
それではドメインに再参加してみます。コンソールからドメイン再参加できたことが分かりやすいように、OUの指定をou=FSxforONTAP
からOU=FSxForONTAP,DC=corp,DC=non-97,DC=net
に変更します。
# CIFSサーバーをドメインに再参加させる FsxId078d5a29bc3af27cc::> vserver cifs modify -vserver fsx-for-ontap-svm -cifs-server CIFS-SERVER -domain corp.non-97.net -ou OU=FSxForONTAP,DC=corp,DC=non-97,DC=net -status- admin down In order to create an Active Directory machine account for the CIFS server, you must supply the name and password of a Windows account with sufficient privileges to add computers to the "OU=FSxForONTAP,DC=corp,DC=non-97,DC=net" container within the "CORP.NON-97.NET" domain. Enter the user name: FSxServiceAccount Enter the password: Warning: An account by this name already exists in Active Directory at CN=CIFS-SERVER,OU=FSxForONTAP,DC=corp,DC=non-97,DC=net. If there is an existing DNS entry for the name CIFS-SERVER, it must be removed. Data ONTAP cannot remove such an entry. Use an external tool to remove it after this command completes. Ok to reuse this account? {y|n}: y # CIFSサーバーがドメインに再参加できたことを確認 FsxId078d5a29bc3af27cc::> vserver cifs show -instance Vserver: fsx-for-ontap-svm CIFS Server NetBIOS Name: CIFS-SERVER NetBIOS Domain/Workgroup Name: CORP Fully Qualified Domain Name: CORP.NON-97.NET Organizational Unit: OU=FSxForONTAP,DC=corp,DC=non-97,DC=net Default Site Used by LIFs Without Site Membership: Workgroup Name: - Authentication Style: domain CIFS Server Administrative Status: up CIFS Server Description: List of NetBIOS Aliases: -
ドメインに再参加できました。
15分ほど待つとSVMの組織単位識別名がドメイン再参加時に指定したOU=FSxForONTAP,DC=corp,DC=non-97,DC=net
に変わりました。
また、再参加前後でCIFSサーバーのコンピューターオブジェクトのGUIDを比較してみましたが、特に変化はありませんでした。
> Get-ADComputer -Filter "*" -SearchBase "DC=corp,DC=non-97,DC=net" DistinguishedName : CN=EC2AMAZ-O1GJL06,OU=Domain Controllers,DC=corp,DC=non-97,DC=net DNSHostName : EC2AMAZ-O1GJL06.corp.non-97.net Enabled : True Name : EC2AMAZ-O1GJL06 ObjectClass : computer ObjectGUID : ad192cdf-8d3e-4555-bf79-44d47838aa8a SamAccountName : EC2AMAZ-O1GJL06$ SID : S-1-5-21-263576405-1328779005-4075605037-1001 UserPrincipalName : DistinguishedName : CN=CIFS-SERVER,OU=FSxForONTAP,DC=corp,DC=non-97,DC=net DNSHostName : cifs-server.corp.non-97.net Enabled : True Name : CIFS-SERVER ObjectClass : computer ObjectGUID : 4e59162b-c171-4476-9ba9-56fac84b6ebd SamAccountName : CIFS-SERVER$ SID : S-1-5-21-263576405-1328779005-4075605037-1107 UserPrincipalName :
それでは、SMB DNS名を名前解決してみます。
> nslookup CIFS-SERVER.CORP.NON-97.NET Server: localhost Address: ::1 Name: CIFS-SERVER.CORP.NON-97.NET Address: 10.0.1.58
名前解決できましたね。
DNS ManagerからもSMB DNS名が登録されていることが確認できました。
それでは、SMB DNS名でCIFSファイル共有をマウントしてみます。
# 現在のドライブ一覧確認 > Get-PSDrive Name Used (GB) Free (GB) Provider Root CurrentLocation ---- --------- --------- -------- ---- --------------- AD ActiveDire... //RootDSE/ Alias Alias C 14.49 15.51 FileSystem C:\ Users\Administrator Cert Certificate \ Env Environment Function Function HKCU Registry HKEY_CURRENT_USER HKLM Registry HKEY_LOCAL_MACHINE Variable Variable WSMan WSMan Z 0.00 95.00 FileSystem \\svm-0aeb4d0634b811bf1.fs-078d5... # CIFSファイル共有をマウントしているZドライブ内の確認 > ls Z:\ Directory: Z:\ Mode LastWriteTime Length Name ---- ------------- ------ ---- -a---- 10/16/2022 2:26 AM 24 test-text -a---- 10/16/2022 3:30 AM 26 test-text2 # 一度CIFSファイル共有をアンマウント > net use Z: /delete Z: was deleted successfully. # CIFSファイル共有がアンマウントされたことを確認 > Get-PSDrive Name Used (GB) Free (GB) Provider Root CurrentLocation ---- --------- --------- -------- ---- --------------- AD ActiveDire... //RootDSE/ Alias Alias C 14.49 15.51 FileSystem C:\ Users\Administrator Cert Certificate \ Env Environment Function Function HKCU Registry HKEY_CURRENT_USER HKLM Registry HKEY_LOCAL_MACHINE Variable Variable WSMan WSMan # SMB DNS名でCIFSファイル共有をZドライブにマウント > net use Z: \\CIFS-SERVER.CORP.NON-97.NET\cifs-share The command completed successfully. # SMB DNS名でCIFSファイル共有をZドライブにマウントできたことを確認 > Get-PSDrive Name Used (GB) Free (GB) Provider Root CurrentLocation ---- --------- --------- -------- ---- --------------- AD ActiveDire... //RootDSE/ Alias Alias C 14.49 15.51 FileSystem C:\ Users\Administrator Cert Certificate \ Env Environment Function Function HKCU Registry HKEY_CURRENT_USER HKLM Registry HKEY_LOCAL_MACHINE Variable Variable WSMan WSMan Z 0.00 95.00 FileSystem \\CIFS-SERVER.CORP.NON-97.NET\ci... # CIFSファイル共有をマウントしているZドライブ内の確認 > ls Z:\ Directory: Z:\ Mode LastWriteTime Length Name ---- ------------- ------ ---- -a---- 10/16/2022 2:26 AM 24 test-text -a---- 10/16/2022 3:30 AM 26 test-text2
SMB DNS名でマウントできました。また、一度ドメインから離脱して、再参加してもSMBのセッションは切れないようですね。
マネジメントコンソールからSVMをドメインに参加させる場合との違いを比較
折角なので、マネジメントコンソールからSVMをドメインに参加させる場合との違いを比較してみようと思います。
SVMとしてfsx-for-onta-svm2
を作成しました
AWS CLIでSVMの一覧を確認すると以下のようになります。
$ aws fsx describe-storage-virtual-machines { "StorageVirtualMachines": [ { "ActiveDirectoryConfiguration": { "NetBiosName": "CIFS-SERVER", "SelfManagedActiveDirectoryConfiguration": { "DomainName": "CORP.NON-97.NET", "OrganizationalUnitDistinguishedName": "OU=FSxForONTAP,DC=corp,DC=non-97,DC=net", "DnsIps": [ "10.0.1.22" ] } }, "CreationTime": "2022-10-16T02:11:51.793000+00:00", "Endpoints": { "Iscsi": { "DNSName": "iscsi.svm-0aeb4d0634b811bf1.fs-078d5a29bc3af27cc.fsx.us-east-1.amazonaws.com", "IpAddresses": [ "10.0.1.56", "10.0.1.43" ] }, "Management": { "DNSName": "svm-0aeb4d0634b811bf1.fs-078d5a29bc3af27cc.fsx.us-east-1.amazonaws.com", "IpAddresses": [ "10.0.1.58" ] }, "Nfs": { "DNSName": "svm-0aeb4d0634b811bf1.fs-078d5a29bc3af27cc.fsx.us-east-1.amazonaws.com", "IpAddresses": [ "10.0.1.58" ] }, "Smb": { "DNSName": "CIFS-SERVER.CORP.NON-97.NET", "IpAddresses": [ "10.0.1.58" ] } }, "FileSystemId": "fs-078d5a29bc3af27cc", "Lifecycle": "CREATED", "Name": "fsx-for-ontap-svm", "ResourceARN": "arn:aws:fsx:us-east-1:<AWSアカウントID>:storage-virtual-machine/fs-078d5a29bc3af27cc/svm-0aeb4d0634b811bf1", "StorageVirtualMachineId": "svm-0aeb4d0634b811bf1", "Subtype": "DEFAULT", "UUID": "0c2fbafd-4cf8-11ed-a80b-c57f7ad2f28c" }, { "ActiveDirectoryConfiguration": { "NetBiosName": "CIFS-SERVER2", "SelfManagedActiveDirectoryConfiguration": { "DomainName": "corp.non-97.net", "OrganizationalUnitDistinguishedName": "OU=FSxForONTAP,DC=corp,DC=non-97,DC=net", "UserName": "FSxServiceAccount", "DnsIps": [ "10.0.1.22" ] } }, "CreationTime": "2022-10-16T04:16:42.121000+00:00", "Endpoints": { "Iscsi": { "DNSName": "iscsi.svm-039da572851c12604.fs-078d5a29bc3af27cc.fsx.us-east-1.amazonaws.com", "IpAddresses": [ "10.0.1.59", "10.0.1.47" ] }, "Management": { "DNSName": "svm-039da572851c12604.fs-078d5a29bc3af27cc.fsx.us-east-1.amazonaws.com", "IpAddresses": [ "10.0.1.37" ] }, "Nfs": { "DNSName": "svm-039da572851c12604.fs-078d5a29bc3af27cc.fsx.us-east-1.amazonaws.com", "IpAddresses": [ "10.0.1.37" ] }, "Smb": { "DNSName": "CIFS-SERVER2.corp.non-97.net", "IpAddresses": [ "10.0.1.37" ] } }, "FileSystemId": "fs-078d5a29bc3af27cc", "Lifecycle": "CREATED", "Name": "fsx-for-ontap-svm2", "ResourceARN": "arn:aws:fsx:us-east-1:<AWSアカウントID>:storage-virtual-machine/fs-078d5a29bc3af27cc/svm-039da572851c12604", "StorageVirtualMachineId": "svm-039da572851c12604", "Subtype": "DEFAULT", "UUID": "5b7b2500-4d09-11ed-a80b-c57f7ad2f28c" } ] }
やはり、サービスアカウントのUserName
が表示されないのが気になりますね。
fsx-for-onta-svm2
上のCIFSサーバーのコンピューターオブジェクトが作成されていることを確認します。
> Get-ADComputer -Filter "*" -SearchBase "DC=corp,DC=non-97,DC=net" -Properties * AccountExpirationDate : accountExpires : 9223372036854775807 AccountLockoutTime : AccountNotDelegated : False AllowReversiblePasswordEncryption : False AuthenticationPolicy : {} AuthenticationPolicySilo : {} BadLogonCount : 0 badPasswordTime : 0 badPwdCount : 0 CannotChangePassword : False CanonicalName : corp.non-97.net/Domain Controllers/EC2AMAZ-O1GJL06 Certificates : {} CN : EC2AMAZ-O1GJL06 codePage : 0 CompoundIdentitySupported : {False} countryCode : 0 Created : 10/16/2022 2:39:52 AM createTimeStamp : 10/16/2022 2:39:52 AM Deleted : Description : DisplayName : DistinguishedName : CN=EC2AMAZ-O1GJL06,OU=Domain Controllers,DC=corp,DC=non-97,DC=net DNSHostName : EC2AMAZ-O1GJL06.corp.non-97.net DoesNotRequirePreAuth : False dSCorePropagationData : {10/16/2022 2:39:53 AM, 1/1/1601 12:00:01 AM} Enabled : True HomedirRequired : False HomePage : instanceType : 4 IPv4Address : 10.0.1.22 IPv6Address : isCriticalSystemObject : True isDeleted : KerberosEncryptionType : {RC4, AES128, AES256} LastBadPasswordAttempt : LastKnownParent : lastLogoff : 0 lastLogon : 133103633959508466 LastLogonDate : 10/16/2022 2:40:32 AM lastLogonTimestamp : 133103616325189020 localPolicyFlags : 0 Location : LockedOut : False logonCount : 8 ManagedBy : MemberOf : {} MNSLogonAccount : False Modified : 10/16/2022 2:45:35 AM modifyTimeStamp : 10/16/2022 2:45:35 AM msDFSR-ComputerReferenceBL : {CN=EC2AMAZ-O1GJL06,CN=Topology,CN=Domain System Volume,CN=DFSR-GlobalSettings,CN=System,DC=corp,DC=non-97,DC=net} msDS-SupportedEncryptionTypes : 28 msDS-User-Account-Control-Computed : 0 Name : EC2AMAZ-O1GJL06 nTSecurityDescriptor : System.DirectoryServices.ActiveDirectorySecurity ObjectCategory : CN=Computer,CN=Schema,CN=Configuration,DC=corp,DC=non-97,DC=net ObjectClass : computer ObjectGUID : ad192cdf-8d3e-4555-bf79-44d47838aa8a objectSid : S-1-5-21-263576405-1328779005-4075605037-1001 OperatingSystem : Windows Server 2022 Datacenter OperatingSystemHotfix : OperatingSystemServicePack : OperatingSystemVersion : 10.0 (20348) PasswordExpired : False PasswordLastSet : 10/16/2022 2:40:20 AM PasswordNeverExpires : False PasswordNotRequired : False PrimaryGroup : CN=Domain Controllers,CN=Users,DC=corp,DC=non-97,DC=net primaryGroupID : 516 PrincipalsAllowedToDelegateToAccount : {} ProtectedFromAccidentalDeletion : False pwdLastSet : 133103616209672555 rIDSetReferences : {CN=RID Set,CN=EC2AMAZ-O1GJL06,OU=Domain Controllers,DC=corp,DC=non-97,DC=net} SamAccountName : EC2AMAZ-O1GJL06$ sAMAccountType : 805306369 sDRightsEffective : 15 serverReferenceBL : {CN=EC2AMAZ-O1GJL06,CN=Servers,CN=Default-First-Site-Name,CN=Sites,CN=Configurat ion,DC=corp,DC=non-97,DC=net} ServiceAccount : {} servicePrincipalName : {Dfsr-12F9A27C-BF97-4787-9364-D31B6C55EB04/EC2AMAZ-O1GJL06.corp.non-97.net, TERMSRV/EC2AMAZ-O1GJL06, TERMSRV/EC2AMAZ-O1GJL06.corp.non-97.net, ldap/EC2AMAZ-O1GJL06.corp.non-97.net/ForestDnsZones.corp.non-97.net...} ServicePrincipalNames : {Dfsr-12F9A27C-BF97-4787-9364-D31B6C55EB04/EC2AMAZ-O1GJL06.corp.non-97.net, TERMSRV/EC2AMAZ-O1GJL06, TERMSRV/EC2AMAZ-O1GJL06.corp.non-97.net, ldap/EC2AMAZ-O1GJL06.corp.non-97.net/ForestDnsZones.corp.non-97.net...} SID : S-1-5-21-263576405-1328779005-4075605037-1001 SIDHistory : {} TrustedForDelegation : True TrustedToAuthForDelegation : False UseDESKeyOnly : False userAccountControl : 532480 userCertificate : {} UserPrincipalName : uSNChanged : 12760 uSNCreated : 12293 whenChanged : 10/16/2022 2:45:35 AM whenCreated : 10/16/2022 2:39:52 AM AccountExpirationDate : accountExpires : 9223372036854775807 AccountLockoutTime : AccountNotDelegated : False AllowReversiblePasswordEncryption : False AuthenticationPolicy : {} AuthenticationPolicySilo : {} BadLogonCount : 0 badPasswordTime : 0 badPwdCount : 0 CannotChangePassword : False CanonicalName : corp.non-97.net/FSxForONTAP/CIFS-SERVER Certificates : {} CN : CIFS-SERVER codePage : 0 CompoundIdentitySupported : {} countryCode : 0 Created : 10/16/2022 3:15:33 AM createTimeStamp : 10/16/2022 3:15:33 AM Deleted : Description : DisplayName : DistinguishedName : CN=CIFS-SERVER,OU=FSxForONTAP,DC=corp,DC=non-97,DC=net DNSHostName : cifs-server.corp.non-97.net DoesNotRequirePreAuth : False dSCorePropagationData : {1/1/1601 12:00:00 AM} Enabled : True HomedirRequired : False HomePage : instanceType : 4 IPv4Address : 10.0.1.58 IPv6Address : isCriticalSystemObject : False isDeleted : KerberosEncryptionType : {} LastBadPasswordAttempt : LastKnownParent : lastLogoff : 0 lastLogon : 133103665812899915 LastLogonDate : 10/16/2022 3:15:33 AM lastLogonTimestamp : 133103637335357119 localPolicyFlags : 0 Location : LockedOut : False logonCount : 4 ManagedBy : MemberOf : {} MNSLogonAccount : False Modified : 10/16/2022 4:03:01 AM modifyTimeStamp : 10/16/2022 4:03:01 AM msDS-User-Account-Control-Computed : 0 Name : CIFS-SERVER nTSecurityDescriptor : System.DirectoryServices.ActiveDirectorySecurity ObjectCategory : CN=Computer,CN=Schema,CN=Configuration,DC=corp,DC=non-97,DC=net ObjectClass : computer ObjectGUID : 4e59162b-c171-4476-9ba9-56fac84b6ebd objectSid : S-1-5-21-263576405-1328779005-4075605037-1107 OperatingSystem : NetApp Release 9.11.0P1 OperatingSystemHotfix : OperatingSystemServicePack : OperatingSystemVersion : PasswordExpired : False PasswordLastSet : 10/16/2022 4:03:01 AM PasswordNeverExpires : False PasswordNotRequired : False PrimaryGroup : CN=Domain Computers,CN=Users,DC=corp,DC=non-97,DC=net primaryGroupID : 515 PrincipalsAllowedToDelegateToAccount : {} ProtectedFromAccidentalDeletion : False pwdLastSet : 133103665811232285 SamAccountName : CIFS-SERVER$ sAMAccountType : 805306369 sDRightsEffective : 15 ServiceAccount : {} servicePrincipalName : {HOST/cifs-server.corp.non-97.net, HOST/CIFS-SERVER} ServicePrincipalNames : {HOST/cifs-server.corp.non-97.net, HOST/CIFS-SERVER} SID : S-1-5-21-263576405-1328779005-4075605037-1107 SIDHistory : {} TrustedForDelegation : False TrustedToAuthForDelegation : False UseDESKeyOnly : False userAccountControl : 4096 userCertificate : {} UserPrincipalName : uSNChanged : 12856 uSNCreated : 12820 whenChanged : 10/16/2022 4:03:01 AM whenCreated : 10/16/2022 3:15:33 AM AccountExpirationDate : accountExpires : 9223372036854775807 AccountLockoutTime : AccountNotDelegated : False AllowReversiblePasswordEncryption : False AuthenticationPolicy : {} AuthenticationPolicySilo : {} BadLogonCount : 0 badPasswordTime : 0 badPwdCount : 0 CannotChangePassword : False CanonicalName : corp.non-97.net/FSxForONTAP/CIFS-SERVER2 Certificates : {} CN : CIFS-SERVER2 codePage : 0 CompoundIdentitySupported : {} countryCode : 0 Created : 10/16/2022 4:17:27 AM createTimeStamp : 10/16/2022 4:17:27 AM Deleted : Description : DisplayName : DistinguishedName : CN=CIFS-SERVER2,OU=FSxForONTAP,DC=corp,DC=non-97,DC=net DNSHostName : CIFS-SERVER2.CORP.NON-97.NET DoesNotRequirePreAuth : False dSCorePropagationData : {1/1/1601 12:00:00 AM} Enabled : True HomedirRequired : False HomePage : instanceType : 4 IPv4Address : 10.0.1.37 IPv6Address : isCriticalSystemObject : False isDeleted : KerberosEncryptionType : {} LastBadPasswordAttempt : LastKnownParent : lastLogoff : 0 lastLogon : 133103674502000183 LastLogonDate : 10/16/2022 4:17:27 AM lastLogonTimestamp : 133103674476829070 localPolicyFlags : 0 Location : LockedOut : False logonCount : 3 ManagedBy : MemberOf : {} MNSLogonAccount : False Modified : 10/16/2022 4:17:27 AM modifyTimeStamp : 10/16/2022 4:17:27 AM msDS-User-Account-Control-Computed : 0 Name : CIFS-SERVER2 nTSecurityDescriptor : System.DirectoryServices.ActiveDirectorySecurity ObjectCategory : CN=Computer,CN=Schema,CN=Configuration,DC=corp,DC=non-97,DC=net ObjectClass : computer ObjectGUID : 1a25e842-d624-4db3-9fa0-906fdba9882a objectSid : S-1-5-21-263576405-1328779005-4075605037-1108 OperatingSystem : NetApp Release 9.11.0P1 OperatingSystemHotfix : OperatingSystemServicePack : OperatingSystemVersion : PasswordExpired : False PasswordLastSet : 10/16/2022 4:17:27 AM PasswordNeverExpires : False PasswordNotRequired : False PrimaryGroup : CN=Domain Computers,CN=Users,DC=corp,DC=non-97,DC=net primaryGroupID : 515 PrincipalsAllowedToDelegateToAccount : {} ProtectedFromAccidentalDeletion : False pwdLastSet : 133103674476357246 SamAccountName : CIFS-SERVER2$ sAMAccountType : 805306369 sDRightsEffective : 15 ServiceAccount : {} servicePrincipalName : {HOST/cifs-server2.corp.non-97.net, HOST/CIFS-SERVER2} ServicePrincipalNames : {HOST/cifs-server2.corp.non-97.net, HOST/CIFS-SERVER2} SID : S-1-5-21-263576405-1328779005-4075605037-1108 SIDHistory : {} TrustedForDelegation : False TrustedToAuthForDelegation : False UseDESKeyOnly : False userAccountControl : 4096 userCertificate : {} UserPrincipalName : uSNChanged : 12871 uSNCreated : 12867 whenChanged : 10/16/2022 4:17:27 AM whenCreated : 10/16/2022 4:17:27 AM
特に差はないようですね。
名前解決できることも確認します。
> nslookup CIFS-SERVER2.CORP.NON-97.NET Server: localhost Address: ::1 Name: CIFS-SERVER2.CORP.NON-97.NET Address: 10.0.1.37
名前解決できますね。
DNS Managerからも前方参照ゾーンにfsx-for-onta-svm2
上のCIFSサーバーCIFS-SERVER2
が追加されたことを確認します。
CIFSサーバーを比較してみます。特に差はないですね。
FsxId078d5a29bc3af27cc::> vserver cifs show -instance Vserver: fsx-for-ontap-svm CIFS Server NetBIOS Name: CIFS-SERVER NetBIOS Domain/Workgroup Name: CORP Fully Qualified Domain Name: CORP.NON-97.NET Organizational Unit: OU=FSxForONTAP,DC=corp,DC=non-97,DC=net Default Site Used by LIFs Without Site Membership: Workgroup Name: - Authentication Style: domain CIFS Server Administrative Status: up CIFS Server Description: List of NetBIOS Aliases: - Vserver: fsx-for-ontap-svm2 CIFS Server NetBIOS Name: CIFS-SERVER2 NetBIOS Domain/Workgroup Name: CORP Fully Qualified Domain Name: CORP.NON-97.NET Organizational Unit: OU=FSxForONTAP,DC=corp,DC=non-97,DC=net Default Site Used by LIFs Without Site Membership: Workgroup Name: - Authentication Style: domain CIFS Server Administrative Status: up CIFS Server Description: List of NetBIOS Aliases: - 2 entries were displayed.
CIFSファイル共有は作成していないのでc$
とipc$
のみありました。
FsxId078d5a29bc3af27cc::> vserver cifs share show Vserver Share Path Properties Comment ACL -------------- ------------- ----------------- ---------- -------- ----------- fsx-for-ontap-svm oplocks BUILTIN\Administrators / Full Control c$ / browsable - changenotify show-previous-versions fsx-for-ontap-svm oplocks Everyone / Full Control cifs-share /volume browsable - changenotify show-previous-versions fsx-for-ontap-svm browsable ipc$ / - - fsx-for-ontap-svm2 oplocks BUILTIN\Administrators / Full Control c$ / browsable - changenotify show-previous-versions fsx-for-ontap-svm2 browsable ipc$ / - - 5 entries were displayed.
DDNSの設定を確認してみます。有効になっていますね。
FsxId078d5a29bc3af27cc::> dns dynamic-update show Vserver Is-Enabled Use-Secure Vserver FQDN TTL --------------- ---------- ---------- ------------------------ ------- fsx-for-ontap-svm true true corp.non-97.net 24h fsx-for-ontap-svm2 true true CIFS-SERVER2.corp.non-97.net 24h 2 entries were displayed.
各SVMが認識している信頼されるドメインを確認してみます。
FsxId078d5a29bc3af27cc::> vserver cifs domain trusts show Node: FsxId078d5a29bc3af27cc-01 Vserver: fsx-for-ontap-svm Home Domain Trusted Domains ------------------------------ ------------------------------------------------ CORP.NON-97.NET - Node: FsxId078d5a29bc3af27cc-01 Vserver: fsx-for-ontap-svm2 Home Domain Trusted Domains ------------------------------ ------------------------------------------------ CORP.NON-97.NET - Node: FsxId078d5a29bc3af27cc-02 Vserver: fsx-for-ontap-svm Home Domain Trusted Domains ------------------------------ ------------------------------------------------ CORP.NON-97.NET - Node: FsxId078d5a29bc3af27cc-02 Vserver: fsx-for-ontap-svm2 Home Domain Trusted Domains ------------------------------ ------------------------------------------------ CORP.NON-97.NET CORP.NON-97.NET 4 entries were displayed.
fsx-for-ontap-svm2
の片方のノードしか信頼しているドメインとして認識していないようです。
SVMの信頼できるドメインをリセットして再検出してみます。
# SVMの信頼できるドメインをリセットして再検出 FsxId078d5a29bc3af27cc::> vserver cifs domain trusts rediscover -vserver fsx-for-ontap-svm # SVMが認識している信頼されるドメインを確認 FsxId078d5a29bc3af27cc::> vserver cifs domain trusts show Node: FsxId078d5a29bc3af27cc-01 Vserver: fsx-for-ontap-svm Home Domain Trusted Domains ------------------------------ ------------------------------------------------ CORP.NON-97.NET CORP.NON-97.NET Node: FsxId078d5a29bc3af27cc-01 Vserver: fsx-for-ontap-svm2 Home Domain Trusted Domains ------------------------------ ------------------------------------------------ CORP.NON-97.NET - Node: FsxId078d5a29bc3af27cc-02 Vserver: fsx-for-ontap-svm Home Domain Trusted Domains ------------------------------ ------------------------------------------------ CORP.NON-97.NET - Node: FsxId078d5a29bc3af27cc-02 Vserver: fsx-for-ontap-svm2 Home Domain Trusted Domains ------------------------------ ------------------------------------------------ CORP.NON-97.NET CORP.NON-97.NET 4 entries were displayed.
fsx-for-ontap-svm
もCORP.NON-97.NET
を信頼できるドメインとして認識してくれました。
CIFSのグループも確認します。ビルトインのもののみで特に差はないようです。
FsxId078d5a29bc3af27cc::> vserver cifs users-and-groups local-group show Vserver Group Name Description -------------- -------------------------------- ---------------------------- fsx-for-ontap-svm BUILTIN\Administrators Built-in Administrators group fsx-for-ontap-svm BUILTIN\Backup Operators Backup Operators group fsx-for-ontap-svm BUILTIN\Guests Built-in Guests Group fsx-for-ontap-svm BUILTIN\Power Users Restricted administrative privileges fsx-for-ontap-svm BUILTIN\Users All users fsx-for-ontap-svm2 BUILTIN\Administrators Built-in Administrators group fsx-for-ontap-svm2 BUILTIN\Backup Operators Backup Operators group fsx-for-ontap-svm2 BUILTIN\Guests Built-in Guests Group fsx-for-ontap-svm2 BUILTIN\Power Users Restricted administrative privileges fsx-for-ontap-svm2 BUILTIN\Users All users 10 entries were displayed.
CIFSユーザーも確認します。ビルトインのAdministratorのみですね。
FsxId078d5a29bc3af27cc::> vserver cifs users-and-groups local-user show Vserver User Name Full Name Description ------------ --------------------------- -------------------- ------------- fsx-for-ontap-svm CIFS-SERVER\Administrator Built-in administrator account fsx-for-ontap-svm CIFS-SERVER\cifs-user - - fsx-for-ontap-svm2 CIFS-SERVER2\Administrator Built-in administrator account 3 entries were displayed.
その他のプロパティも確認してみましたが、特に差分はありませんでした。
ドメインに属しているCIFSサーバーをワークグループに変更
最後にドメインに属しているCIFSサーバーをワークグループに変更してみます。
# CIFSサーバーをワークグループに変更 FsxId078d5a29bc3af27cc::> vserver cifs modify -vserver fsx-for-ontap-svm -cifs-server CIFS-SERVER -workgroup fsxn-workgroup -status-admin down Warning: To enter workgroup mode, all domain-based features must be disabled and their configuration removed automatically by the system, including continuously-available shares and shadow copies. However, domain-configured share ACLs such as "CORP.NON-97.NET\userName" will not work properly, but cannot be removed by Data ONTAP. Remove these share ACLs as soon as possible using external tools after the command completes. Do you want to continue? {y|n}: y Successfully queued CIFS Server Modify job [id: 45] for CIFS server "CIFS-SERVER". To view the status of the job, use the "job show -id <jobid>" command. # CIFSサーバーがワークグループに変更されたことを確認 FsxId078d5a29bc3af27cc::> vserver cifs show -cifs-server CIFS-SERVER -instance Vserver: fsx-for-ontap-svm CIFS Server NetBIOS Name: CIFS-SERVER NetBIOS Domain/Workgroup Name: FSXN-WORKGROUP Fully Qualified Domain Name: - Organizational Unit: - Default Site Used by LIFs Without Site Membership: - Workgroup Name: FSXN-WORKGROUP Authentication Style: workgroup CIFS Server Administrative Status: up CIFS Server Description: List of NetBIOS Aliases: -
CIFSファイルサーバーをドメインから離脱させた後、CIFSファイル共有にアクセスできるか確認してみます。
# CIFSファイル共有がマウントされたままであることを確認 > Get-PSDrive Name Used (GB) Free (GB) Provider Root CurrentLocation ---- --------- --------- -------- ---- --------------- AD ActiveDire... //RootDSE/ Alias Alias C 14.49 15.50 FileSystem C:\ Users\Administrator Cert Certificate \ Env Environment Function Function HKCU Registry HKEY_CURRENT_USER HKLM Registry HKEY_LOCAL_MACHINE Variable Variable WSMan WSMan Z FileSystem \\CIFS-SERVER.CORP.NON-97.NET\ci... # CIFSファイル共有をマウントしているドライブ配下の確認 > ls Z:\ ls : Cannot find path 'Z:\' because it does not exist. At line:1 char:1 + ls Z:\ + ~~~~~~ + CategoryInfo : ObjectNotFound: (Z:\:String) [Get-ChildItem], ItemNotFoundException + FullyQualifiedErrorId : PathNotFound,Microsoft.PowerShell.Commands.GetChildItemCommand
怒られましたね。
名前解決も当然ですが、できなくなっています。
> nslookup CIFS-SERVER.CORP.NON-97.NET Server: localhost Address: ::1 *** localhost can't find CIFS-SERVER.CORP.NON-97.NET: Non-existent domain
SVMの管理DNS名で再マウントしてみます。
# CIFSファイル共有をアンマウント > net use Z: /delete Z: was deleted successfully. # SVMの管理DNS名でCIFSファイル共有をZドライブにマウント > net use Z: \\svm-0aeb4d0634b811bf1.fs-078d5a29bc3af27cc.fsx.us-east-1.amazonaws.com\cifs-share The password is invalid for \\svm-0aeb4d0634b811bf1.fs-078d5a29bc3af27cc.fsx.us-east-1.amazonaws.com\cifs-share. Enter the user name for 'svm-0aeb4d0634b811bf1.fs-078d5a29bc3af27cc.fsx.us-east-1.amazonaws.com': CIFS-SERVER\cifs-user Enter the password for svm-0aeb4d0634b811bf1.fs-078d5a29bc3af27cc.fsx.us-east-1.amazonaws.com: The command completed successfully. # マウントできたことを確認 > Get-PSDrive Name Used (GB) Free (GB) Provider Root CurrentLocation ---- --------- --------- -------- ---- --------------- AD ActiveDire... //RootDSE/ Alias Alias C 14.50 15.50 FileSystem C:\ Users\Administrator Cert Certificate \ Env Environment Function Function HKCU Registry HKEY_CURRENT_USER HKLM Registry HKEY_LOCAL_MACHINE Variable Variable WSMan WSMan Z 0.00 95.00 FileSystem \\CIFS-SERVER.CORP.NON-97.NET\ci... # マウントしているCIFSファイル共有ないのファイル一覧を確認 > ls Z:\ Directory: Z:\ Mode LastWriteTime Length Name ---- ------------- ------ ---- -a---- 10/16/2022 2:26 AM 24 test-text -a---- 10/16/2022 3:30 AM 26 test-text2
無事マウントできました。
なお、PowerShellで確認すると、引き続きSMB DNS名CIFS-SERVER.CORP.NON-97.NET
で接続していそうですが、エクスプローラーから確認すると確かにSMBのDNS名で接続していました。
ちなみに、30分ほど待ってもコンソールからはADの情報やSMB DNS名は表示されたままでした。SVMは一度ドメインに参加すると、離脱してもAWS上から本当にドメインに参加しているのか判断できないので注意が必要そうです。
後からドメイン参加はできるけど注意が必要
ワークグループのCIFSサーバーをドメイン参加させてみました。
後からドメインに参加する場合は、DDNSを有効化しておく必要があるのが一番注意する必要がありそうですね。また、信頼されるドメインとして認識されない場合もあるのでvserver cifs domain trusts rediscoverを実行する必要もありました。
また、今回検証した分では差を見つけることはできませんでしたが、AWSでSVMを作成する時に指定できる管理用グループ(FileSystemAdministratorsGroup
)を指定することができなかったのも気になります。
この記事が誰かの助けになれば幸いです。
以上、AWS事業本部 コンサルティング部の のんピ(@non____97)でした!